#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <string.h>

char tube[] = "/tmp/print";

int main(){
  int fd;
  char file[60];
  /* Ouverture du pipe en écriture */
  fd = open(tube,O_RDWR | O_NDELAY);
  if (fd < 0) {
    perror("Erreur lors de l'ouverture du tube en écriture");
    return EXIT_FAILURE;
  }
  /* Boucle d'attente */
  do {
    printf("Nom du fichier a imprimer (taper '0' pour terminer) ?\n");
    scanf("%s", file);
    if (strcmp(file,"0") == 0){
      break;
    }
    /* Send to pipe ! */
    if (write(fd,file,sizeof(file)) < 0) {
      perror("Ecriture du nom de fichier");
      return EXIT_FAILURE;
    }
  } while(1);
  /* Supression du pipe */
  return EXIT_SUCCESS;
}
